package com.wang.springbootinit.controller;

import com.wang.springbootinit.common.BaseResponse;
import com.wang.springbootinit.common.ResultUtils;
import com.wang.springbootinit.model.dto.TrainingQueryDTO;
import com.wang.springbootinit.service.TrainingService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * 训练管理控制器
 */
@RestController
@RequestMapping("/student/training")
public class TrainingController {
    @Autowired
    private TrainingService trainingService;

    /**
     * 分页获取训练记录
     * @param queryDTO 查询参数对象，包含分页和筛选条件
     * @return 训练记录分页数据
     */
    @GetMapping("/page")
    public BaseResponse getTrainingPage(TrainingQueryDTO queryDTO) {
        return ResultUtils.success(trainingService.getTrainingPage(queryDTO));
    }

    /**
     * 根据训练ID获取训练详情
     * @param trainingId 训练记录ID
     * @return 训练详细信息
     */
    @GetMapping("/{id}")
    public BaseResponse getTrainingById(@PathVariable("id") Long trainingId) {
        return ResultUtils.success(trainingService.getTrainingById(trainingId));
    }

    /**
     * 根据训练项目名称查询训练记录
     * @param itemName 训练项目名称
     * @return 该项目的训练记录列表
     */
    @GetMapping("/item/{itemName}")
    public BaseResponse getTrainingByItem(@PathVariable("itemName") String itemName) {
        return ResultUtils.success(trainingService.getTrainingByItem(itemName));
    }
} 